package org.xiaoxin.onecoupon.engine.service;

import org.xiaoxin.onecoupon.engine.dto.req.CouponCreatePaymentReqDTO;
import org.xiaoxin.onecoupon.engine.dto.req.CouponProcessPaymentReqDTO;
import org.xiaoxin.onecoupon.engine.dto.req.CouponProcessRefundReqDTO;
import org.xiaoxin.onecoupon.engine.dto.req.CouponTemplateRedeemReqDTO;

/**
 * @author xiaoxin
 * 2025/5/12
 */
public interface UserConponService {
   void redeemUserConpon(CouponTemplateRedeemReqDTO requestParam);

    void redeemUserCouponByMQ(CouponTemplateRedeemReqDTO requestParam);

    void createPaymentRecord(CouponCreatePaymentReqDTO couponCreatePaymentReqDTO);

    void processPayment(CouponProcessPaymentReqDTO couponProcesscouponCreatePaymentReqDTO);

    void processRefund(CouponProcessRefundReqDTO requestParam);
}
